Usando os operadores -> e :: para classes

Publicado por Rodrigo Caldeira de Paula Lima em 27/03/2003

[ Hits: 4.598 ]

 


Usando os operadores -> e :: para classes



Uma dúvida que muitos tem sobre classes é como usar os operadores :: e -> e qual a diferença entre elas.

O operador -> é usado para acessar as funções e propriedades de classes que já foram instanciadas, por exemplo:
class $foo {
  function bar() {
    echo "Função bar()";
  }
}

$classe = new $foo;
$classe -> bar();
primeiro, instanciamos a classe $foo na variável $classe e com o operador -> acessamos a função bar().

Mas nós poderíamos acessar a função bar() da classe $foo sem instanciá-la, assim:
class $foo {
  function bar() {
    echo "Função bar()";
  }
}

$foo::bar();
isso faz a mesma coisa que o primeiro código, porém sem a necessidade de instanciar a classe $foo.

As vezes isso é útil para classes que não necessitam realmente de instancialização, como as classes do PHP-GTK.

[]'s

Outras dicas deste autor

PHP na linha de comando

Leitura recomendada

Resolvendo diferenças de horas no PHP

Erro ao executar script php no KUbuntu 7.10

Tudo em um

Upload de arquivos maiores que 2MB em PHP

Sintaxe das queries

  

Comentários
[1] Comentário enviado por GrupoFimdeprova em 13/08/2004 - 08:41h

Tem um Grave Erro de sintaxe nesta Dica.

o caractere '$' serve para iniciar variáveis, e não o Nome da Classe.

Não funcionar se alguém tentar

[2] Comentário enviado por jitto em 06/10/2004 - 08:53h

Para que serve o instanciamento?



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts